package com.zhuiYun.project.api.customer.service;

import cn.hutool.json.JSONObject;
import com.zhuiYun.project.api.customer.entity.FriendEntity;
import com.zhuiYun.project.api.customer.entity.MsgDTO;
import com.zhuiYun.project.common.response.CommonResult;

import java.util.List;

/**
 * LC: 2023-04-03 14:11
 */
public interface CustomerService {
    /**
     * @descriptions 保存聊天记录
     * LC: 2023-04-04 13:50
     */
    void storeMessage(String userId, String friendId, String text);

    /**
     * 查询会话列表
     * LC: 2023-04-04 14:48
     * @param myId
     * @param friendId
     * @return
     */
    FriendEntity getFriend(Integer myId, Integer friendId);

    /**
     * 查询聊天记录
     * LC: 2023-04-04 13:51
     */
    List<JSONObject> readMessage(Long sessionId);

    /**
     * @descriptions 获取客服信息
     * LC: 2023-04-04 13:52
     * @param myId
     * @return result.CommonResult
     */
    List<JSONObject> getFriendList(Integer myId);

    /**
     * 清空读取信息
     * LC: 2023-04-04 13:53
     * @param myId
     * @param friendId
     * @return
     */
    void emptyUnRead(Integer myId, Integer friendId);

    /**
     * 新增会话
     * LC: 2023-04-04 18:37
     * @param id
     * @return
     */
    Integer saveFriend(Integer id);

    /**
    * @Description 保存聊天记录
    * @Author lzy
    * @Date 2023/4/20 11:29
    * @Return com.zhuiYun.project.common.response.CommonResult
     * @param msgVos
     * @param userId
    */
    CommonResult saveChatRecord(List<MsgDTO> msgVos, String userId);

    /**
    * @Description 根据用户id获取聊天记录
    * @Author lzy
    * @Date 2023/4/20 11:36
    * @Return com.zhuiYun.project.common.response.CommonResult
    * @param userId
    */
    CommonResult getChatRecordByUserId(String userId);
}
